home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / etc / pcmcia / scsi < prev    next >
Text File  |  2005-10-18  |  2KB  |  79 lines

  1. #!/bin/sh
  2. #
  3. # scsi 1.30 1997/05/13 02:18:00 (David Hinds)
  4. #
  5. # Initialize or shutdown a PCMCIA SCSI adapter
  6. #
  7. # The first argument should be either 'start' or 'stop'.  The second
  8. # argument is the base name for the device.
  9. #
  10. # The script passes an extended device address to 'scsi.opts' in the
  11. # ADDRESS variable, to retrieve device-specific configuration options.
  12. # The address format is "scheme,device,socket,channel,id,lun[,part]"
  13. # where "scheme" is the PCMCIA configuration scheme; "device" is the
  14. # SCSI device type (sd, sr, st, sg); "socket" is the socket number;
  15. # "channel", "id", and "lun" are the SCSI device ID's; and "part" is,
  16. # optionally, the partition number.
  17. #
  18. # The script first calls scsi.opts for the entire device.  If
  19. # scsi.opts returns with the PARTS variable set, then this variable
  20. # contains a list of partitions for which options should be read.
  21. #
  22.  
  23. if [ -r ./shared ] ; then . ./shared ; else . /etc/pcmcia/shared ; fi
  24.  
  25. # Get device attributes
  26. get_info $DEVICE
  27.  
  28. case "$DEVICE" in
  29. sd*)  TYPE="sd" ;;
  30. st*)  TYPE="st" ;;
  31. scd*) TYPE="sr" ;;
  32. sg*)  TYPE="sg" ;;
  33. esac
  34. eval `/sbin/scsi_info /dev/$DEVICE` || usage
  35.  
  36. # Load site-specific settings
  37. ADDRESS="$SCHEME,$TYPE,$SOCKET,$SCSI_ID"
  38. . $0.opts
  39.  
  40. case "$ACTION" in
  41.  
  42. 'start')
  43.     [ -n "$VERBOSE" -a -n "$INFO" ] && echo "$INFO"
  44.     add_parts $ADDRESS "$PARTS" || exit 1
  45.     ;;
  46.  
  47. 'stop')
  48.     if [ -b /dev/$DEVICE ] ; then
  49.     rm_parts $ADDRESS "$PARTS"
  50.     else
  51.     do_fuser -k /dev/$DEVICE > /dev/null
  52.     fi
  53.     exit $?
  54.     ;;
  55.  
  56. 'check')
  57.     is_true $NO_CHECK && exit 0
  58.     if [ -b /dev/$DEVICE ] ; then
  59.     do_fuser -s -m /dev/${DEVICE}* && exit 1
  60.     elif [ -c /dev/$DEVICE ] ; then
  61.     do_fuser -s /dev/${DEVICE}* && exit 1
  62.     fi
  63.     ;;
  64.  
  65. 'cksum')
  66.     chk_parts "$NEW_SCHEME,$TYPE,$SOCKET,$SCSI_ID" || exit 1
  67.     ;;
  68.     
  69. 'suspend'|'resume')
  70.     ;;
  71.  
  72. *)
  73.     usage
  74.     ;;
  75.  
  76. esac
  77.  
  78. exit 0
  79.